// 导入axios
import axios from 'axios';
// 导入nanoid
import {nanoid} from 'nanoid';
export default {
    // 开启命名空间，令组件可指定store名来获取指定store
	namespaced:true,
	actions:{
        // 添加一个action用于添加一个只能是姓王的用户
		addPersonWang(context,val){
			if(val.name.indexOf('王') == 0){
				context.commit('ADD_PERSON',val)
			}else{
				alert('添加的人必须姓王');
			}
		},
        // 添加一个action用于添加一个随机的用户
		addPersonServer(context){
			axios.get("https://api.uixsj.cn/hitokoto/get?type=social")
			.then(res => {
				const person = {id:nanoid(),name:res.data}
				console.log(person);
				context.commit('ADD_PERSON',person);
			})
			.catch(err => {
				console.error(err); 
			})
		}
	},
	mutations:{
        // 定义一个mutation专门用来给personList头部添加用户
		ADD_PERSON(state,value){
			console.log('mutations中的ADD_PERSON被调用了')
			state.personList.unshift(value)
		}
	},
	state:{
        // 用来存储用户的personList数组
		personList:[
			{id:'001',name:'张三'}
		]
	},
	getters:{
        // 定义一个getter用于获取personList第一个用户的姓名
		firstPersonName(state){
			return state.personList[0].name;
		}
	}
}
